/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
/*
 * interface.h
 * Copyright (C) The Pennsylvania State University 2008 <tpk5010@psu.edu>
 */

#ifndef INTERFACE_H
#define INTERFACE_H
#include <gtk/gtk.h>
#include "appdata.h"

#define MAIN_VIEW_NAME "AppUIData"

/* Struct to include view's information */
typedef struct _AppUIData AppUIData;
struct _AppUIData {

	/* Handle to the AppData */
    AppData *data;

    /* List application's widgets here. Match GladeXML file for sanity. */
    GtkWidget *window;
	GtkTextView *logview;
	GtkWidget *submitbutton;
	GtkWidget *recordtoggle;
	GtkWidget *clearbutton;
	GtkWidget *stopbutton;
	GtkWidget *severitycombo;
	GtkWidget *categorycombo;
	GtkWidget *detailsview;
	GtkWidget *timeLabel;
	GtkWidget *streamStatusIcon;
	GtkWidget *gpsStatusLabel;
	GtkWidget *gpsLatLabel;
	GtkWidget *gpsLongLabel;
};

/* Publics: */
AppUIData* interface_main_view_new( AppData* data );
void interface_main_view_destroy( AppUIData* main );

#endif
